home *** CD-ROM | disk | FTP | other *** search
/ Aminet 24 / Aminet 24 (1998)(GTI - Schatztruhe)[!][Apr 1998].iso / Aminet / dev / c / AmiVoGL_MDEV.lha / src / move.s < prev    next >
Text File  |  1997-12-30  |  6KB  |  402 lines

  1.  
  2. ; Maxon C++ Compiler
  3. ; LS2:work/voGL/src/move.c
  4.     mc68020
  5.     mc68881
  6.     XREF    _newtokens
  7.     XREF    _multvector
  8.     XREF    _WtoVy
  9.     XREF    _WtoVx
  10.     XREF    _verror
  11.     XREF    _std__in
  12.     XREF    _std__out
  13.     XREF    _std__err
  14.     XREF    ___MEMFLAGS
  15.     XREF    _vdevice
  16.  
  17.     SECTION ":0",CODE
  18.  
  19.  
  20.     XDEF    _move
  21. _move
  22. L7    EQU    -$20
  23.     link    a5,#L7+28
  24. L8    EQU    $4C9C
  25.     movem.l    d2-d4/d7/a2/a3/a6,-(a7)
  26.     move.s    $10(a5),d2
  27.     move.s    $C(a5),d3
  28.     move.s    $8(a5),d4
  29.     XREF    userbreak_flagpos
  30.     move.l    userbreak_flagpos,a1
  31.     btst    #4,(a1)
  32.     bne    L9
  33.     tst.b    _vdevice
  34.     bne    L1
  35.     pea    L10
  36.     jsr    _verror
  37.     addq.l    #4,a7
  38. L1
  39.     move.l    #_vdevice+$28,a3
  40.     moveq    #0,d7
  41.     move.l    d4,0(a3,d7.l*4)
  42.     move.l    #_vdevice+$28,a3
  43.     moveq    #1,d7
  44.     move.l    d3,0(a3,d7.l*4)
  45.     move.l    #_vdevice+$28,a3
  46.     moveq    #2,d7
  47.     move.l    d2,0(a3,d7.l*4)
  48.     clr.b    _vdevice+5
  49.     tst.b    _vdevice+2
  50.     beq    L2
  51.     pea    4.w
  52.     jsr    _newtokens
  53.     addq.l    #4,a7
  54.     move.l    d0,-4(a5)
  55.     move.l    d0,a3
  56.     moveq    #0,d7
  57.     move.l    #$11,0(a3,d7.l*4)
  58.     moveq    #1,d7
  59.     move.l    d4,0(a3,d7.l*4)
  60.     moveq    #2,d7
  61.     move.l    d3,0(a3,d7.l*4)
  62.     moveq    #3,d7
  63.     move.l    d2,0(a3,d7.l*4)
  64.     fmovem.x (a7)+,[LATEST]
  65.     movem.l    (a7)+,#L8
  66.     unlk    a5
  67.     rts
  68. L2
  69.     tst.b    _vdevice+1
  70.     beq    L3
  71.     move.l    _vdevice+$14,a2
  72.     move.l    #_vdevice+$28,a3
  73.     move.l    #_vdevice+$38,a6
  74.     jsr    _multvector
  75.     pea    _vdevice+$38
  76.     jsr    _WtoVx
  77.     addq.l    #4,a7
  78.     move.l    d0,_vdevice+$7C
  79.     pea    _vdevice+$38
  80.     jsr    _WtoVy
  81.     addq.l    #4,a7
  82.     move.l    d0,_vdevice+$80
  83. L3
  84.     fmovem.x (a7)+,[LATEST]
  85.     movem.l    (a7)+,#L8
  86.     unlk    a5
  87.     rts
  88.  
  89.     XDEF    _moves
  90. _moves
  91. L11    EQU    -$10
  92.     link    a5,#L11+16
  93. L12    EQU    $80
  94.     movem.l    #L12,-(a7)
  95.     fmovem.x fp7,-(a7)
  96.     move.l    userbreak_flagpos,a1
  97.     btst    #4,(a1)
  98.     bne    L9
  99.     move.w    $C(a5),d7
  100.     ext.l    d7
  101.     fmove.l    d7,fp7
  102.     fmove.s    fp7,-(a7)
  103.     move.w    $A(a5),d7
  104.     ext.l    d7
  105.     fmove.l    d7,fp7
  106.     fmove.s    fp7,-(a7)
  107.     move.w    $8(a5),d7
  108.     ext.l    d7
  109.     fmove.l    d7,fp7
  110.     fmove.s    fp7,-(a7)
  111.     bsr    _move
  112.     lea    $C(a7),a7
  113.     fmovem.x (a7)+,[LATEST]
  114.     movem.l    (a7)+,#L12
  115.     unlk    a5
  116.     rts
  117.  
  118.     XDEF    _movei
  119. _movei
  120. L13    EQU    -$C
  121.     link    a5,#L13+12
  122. L14    EQU    0
  123.     movem.l    #L14,-(a7)
  124.     fmovem.x fp7,-(a7)
  125.     move.l    userbreak_flagpos,a1
  126.     btst    #4,(a1)
  127.     bne    L9
  128.     fmove.l    $10(a5),fp7
  129.     fmove.s    fp7,-(a7)
  130.     fmove.l    $C(a5),fp7
  131.     fmove.s    fp7,-(a7)
  132.     fmove.l    $8(a5),fp7
  133.     fmove.s    fp7,-(a7)
  134.     bsr    _move
  135.     lea    $C(a7),a7
  136.     fmovem.x (a7)+,[LATEST]
  137.     movem.l    (a7)+,#L14
  138.     unlk    a5
  139.     rts
  140.  
  141.     XDEF    _move2
  142. _move2
  143. L15    EQU    0
  144.     link    a5,#L15
  145. L16    EQU    0
  146.     movem.l    #L16,-(a7)
  147.     move.l    userbreak_flagpos,a1
  148.     btst    #4,(a1)
  149.     bne    L9
  150.     tst.b    _vdevice
  151.     bne    L4
  152.     pea    L17
  153.     jsr    _verror
  154.     addq.l    #4,a7
  155. L4
  156.     clr.l    -(a7)
  157.     move.l    $C(a5),-(a7)
  158.     move.l    $8(a5),-(a7)
  159.     bsr    _move
  160.     lea    $C(a7),a7
  161.     fmovem.x (a7)+,[LATEST]
  162.     movem.l    (a7)+,#L16
  163.     unlk    a5
  164.     rts
  165.  
  166.     XDEF    _move2s
  167. _move2s
  168. L18    EQU    -$10
  169.     link    a5,#L18+16
  170. L19    EQU    $80
  171.     movem.l    #L19,-(a7)
  172.     fmovem.x fp7,-(a7)
  173.     move.l    userbreak_flagpos,a1
  174.     btst    #4,(a1)
  175.     bne    L9
  176.     move.w    $A(a5),d7
  177.     ext.l    d7
  178.     fmove.l    d7,fp7
  179.     fmove.s    fp7,-(a7)
  180.     move.w    $8(a5),d7
  181.     ext.l    d7
  182.     fmove.l    d7,fp7
  183.     fmove.s    fp7,-(a7)
  184.     bsr    _move2
  185.     addq.l    #$8,a7
  186.     fmovem.x (a7)+,[LATEST]
  187.     movem.l    (a7)+,#L19
  188.     unlk    a5
  189.     rts
  190.  
  191.     XDEF    _move2i
  192. _move2i
  193. L20    EQU    -$C
  194.     link    a5,#L20+12
  195. L21    EQU    0
  196.     movem.l    #L21,-(a7)
  197.     fmovem.x fp7,-(a7)
  198.     move.l    userbreak_flagpos,a1
  199.     btst    #4,(a1)
  200.     bne    L9
  201.     fmove.l    $C(a5),fp7
  202.     fmove.s    fp7,-(a7)
  203.     fmove.l    $8(a5),fp7
  204.     fmove.s    fp7,-(a7)
  205.     bsr    _move2
  206.     addq.l    #$8,a7
  207.     fmovem.x (a7)+,[LATEST]
  208.     movem.l    (a7)+,#L21
  209.     unlk    a5
  210.     rts
  211.  
  212.     XDEF    _rmv
  213. _rmv
  214. L22    EQU    -$14
  215.     link    a5,#L22+20
  216. L23    EQU    $880
  217.     movem.l    #L23,-(a7)
  218.     fmovem.x fp7,-(a7)
  219.     move.l    userbreak_flagpos,a1
  220.     btst    #4,(a1)
  221.     bne    L9
  222.     tst.b    _vdevice
  223.     bne    L5
  224.     pea    L24
  225.     jsr    _verror
  226.     addq.l    #4,a7
  227. L5
  228.     move.l    #_vdevice+$28,a3
  229.     moveq    #2,d7
  230.     fmove.s    0(a3,d7.l*4),fp7
  231.     fadd.s    $10(a5),fp7
  232.     fmove.s    fp7,-(a7)
  233.     move.l    #_vdevice+$28,a3
  234.     moveq    #1,d7
  235.     fmove.s    0(a3,d7.l*4),fp7
  236.     fadd.s    $C(a5),fp7
  237.     fmove.s    fp7,-(a7)
  238.     move.l    #_vdevice+$28,a3
  239.     moveq    #0,d7
  240.     fmove.s    0(a3,d7.l*4),fp7
  241.     fadd.s    $8(a5),fp7
  242.     fmove.s    fp7,-(a7)
  243.     bsr    _move
  244.     lea    $C(a7),a7
  245.     fmovem.x (a7)+,[LATEST]
  246.     movem.l    (a7)+,#L23
  247.     unlk    a5
  248.     rts
  249.  
  250.     XDEF    _rmvs
  251. _rmvs
  252. L25    EQU    -$10
  253.     link    a5,#L25+16
  254. L26    EQU    $80
  255.     movem.l    #L26,-(a7)
  256.     fmovem.x fp7,-(a7)
  257.     move.l    userbreak_flagpos,a1
  258.     btst    #4,(a1)
  259.     bne    L9
  260.     move.w    $C(a5),d7
  261.     ext.l    d7
  262.     fmove.l    d7,fp7
  263.     fmove.s    fp7,-(a7)
  264.     move.w    $A(a5),d7
  265.     ext.l    d7
  266.     fmove.l    d7,fp7
  267.     fmove.s    fp7,-(a7)
  268.     move.w    $8(a5),d7
  269.     ext.l    d7
  270.     fmove.l    d7,fp7
  271.     fmove.s    fp7,-(a7)
  272.     bsr    _rmv
  273.     lea    $C(a7),a7
  274.     fmovem.x (a7)+,[LATEST]
  275.     movem.l    (a7)+,#L26
  276.     unlk    a5
  277.     rts
  278.  
  279.     XDEF    _rmvi
  280. _rmvi
  281. L27    EQU    -$C
  282.     link    a5,#L27+12
  283. L28    EQU    0
  284.     movem.l    #L28,-(a7)
  285.     fmovem.x fp7,-(a7)
  286.     move.l    userbreak_flagpos,a1
  287.     btst    #4,(a1)
  288.     bne    L9
  289.     fmove.l    $10(a5),fp7
  290.     fmove.s    fp7,-(a7)
  291.     fmove.l    $C(a5),fp7
  292.     fmove.s    fp7,-(a7)
  293.     fmove.l    $8(a5),fp7
  294.     fmove.s    fp7,-(a7)
  295.     bsr    _rmv
  296.     lea    $C(a7),a7
  297.     fmovem.x (a7)+,[LATEST]
  298.     movem.l    (a7)+,#L28
  299.     unlk    a5
  300.     rts
  301.  
  302.     XDEF    _rmv2
  303. _rmv2
  304. L29    EQU    -$14
  305.     link    a5,#L29+20
  306. L30    EQU    $880
  307.     movem.l    #L30,-(a7)
  308.     fmovem.x fp7,-(a7)
  309.     move.l    userbreak_flagpos,a1
  310.     btst    #4,(a1)
  311.     bne    L9
  312.     tst.b    _vdevice
  313.     bne    L6
  314.     pea    L31
  315.     jsr    _verror
  316.     addq.l    #4,a7
  317. L6
  318.     clr.l    -(a7)
  319.     move.l    #_vdevice+$28,a3
  320.     moveq    #1,d7
  321.     fmove.s    0(a3,d7.l*4),fp7
  322.     fadd.s    $C(a5),fp7
  323.     fmove.s    fp7,-(a7)
  324.     move.l    #_vdevice+$28,a3
  325.     moveq    #0,d7
  326.     fmove.s    0(a3,d7.l*4),fp7
  327.     fadd.s    $8(a5),fp7
  328.     fmove.s    fp7,-(a7)
  329.     bsr    _move
  330.     lea    $C(a7),a7
  331.     fmovem.x (a7)+,[LATEST]
  332.     movem.l    (a7)+,#L30
  333.     unlk    a5
  334.     rts
  335.  
  336.     XDEF    _rmv2s
  337. _rmv2s
  338. L32    EQU    -$10
  339.     link    a5,#L32+16
  340. L33    EQU    $80
  341.     movem.l    #L33,-(a7)
  342.     fmovem.x fp7,-(a7)
  343.     move.l    userbreak_flagpos,a1
  344.     btst    #4,(a1)
  345.     bne    L9
  346.     move.w    $A(a5),d7
  347.     ext.l    d7
  348.     fmove.l    d7,fp7
  349.     fmove.s    fp7,-(a7)
  350.     move.w    $8(a5),d7
  351.     ext.l    d7
  352.     fmove.l    d7,fp7
  353.     fmove.s    fp7,-(a7)
  354.     bsr    _rmv2
  355.     addq.l    #$8,a7
  356.     fmovem.x (a7)+,[LATEST]
  357.     movem.l    (a7)+,#L33
  358.     unlk    a5
  359.     rts
  360.  
  361.     XDEF    _rmv2i
  362. _rmv2i
  363. L34    EQU    -$C
  364.     link    a5,#L34+12
  365. L35    EQU    0
  366.     movem.l    #L35,-(a7)
  367.     fmovem.x fp7,-(a7)
  368.     move.l    userbreak_flagpos,a1
  369.     btst    #4,(a1)
  370.     bne    L9
  371.     fmove.l    $C(a5),fp7
  372.     fmove.s    fp7,-(a7)
  373.     fmove.l    $8(a5),fp7
  374.     fmove.s    fp7,-(a7)
  375.     bsr    _rmv2
  376.     addq.l    #$8,a7
  377.     fmovem.x (a7)+,[LATEST]
  378.     movem.l    (a7)+,#L35
  379.     unlk    a5
  380.     rts
  381.  
  382. L9
  383.     XREF    userbreak
  384.     jsr    userbreak
  385.  
  386. L17
  387.     dc.b    'move2: vogl not initialised',0
  388. L10
  389.     dc.b    'move: vogl not initialised',0
  390. L31
  391.     dc.b    'rmv2: vogl not initialised',0
  392. L24
  393.     dc.b    'rmv: vogl not initialised',0
  394.  
  395.     SECTION ":0",CODE
  396.  
  397.  
  398. L9
  399.     jsr    userbreak
  400.  
  401.     END
  402.